package com.yxw.live_vod_boot.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yxw.live_vod_boot.entity.YxFansEntity;
import com.yxw.live_vod_boot.vo.FansListVO;
import com.yxw.live_vod_boot.vo.FansNumberAndFollowNumberVO;
import com.yxw.live_vod_boot.vo.ShopFollowListVO;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

@Repository
public interface FansMapper extends BaseMapper<YxFansEntity> {

    List<FansListVO> getFansListByShopId(Page<YxFansEntity> page, @Param("shopId") Long shopId);

    List<ShopFollowListVO> getShopFollowListByShopId(Page<YxFansEntity> page, @Param("shopId") Long shopId);

    List<FansListVO> getFansListForUser(Page<YxFansEntity> page, @Param("userId") Long userId);

    FansNumberAndFollowNumberVO getFansNumberAndFollowNumberForShop(@Param("shopId") Long shopId);

    FansNumberAndFollowNumberVO getFansNumberAndFollowNumberForUser(@Param("userId") Long userId);
}